# 查询主流程
# 1.导入pymysql
import pymysql

# 2.创建连接对象
conn = pymysql.connect(host='127.0.0.1', user='root', password='root', database='advanced', charset='utf8')

# 3.创建游标对象
# pymysql.cursors.Cursor   元组结果集,默认是Cursor
# pymysql.cursors.DictCursor   字典结果集

cursor = conn.cursor(pymysql.cursors.DictCursor)  # 不填默认是元组集
# 4.执行sql语句
sql = 'select * from student'
rows = cursor.execute(sql)
print(f'受影响的行数:{rows}')

# 5.获取结果集
# 注意:游标对象只会获取一次,不会重复获取
# 01.一次获取一行
one = cursor.fetchone()  # 获取第1行
print(one)
# 02.一次获取指定行
many = cursor.fetchmany(2)  # 获取3,4行
print(many)
# 03.全部获取
all1 = cursor.fetchall()  # 获取5,6,7,8行,不会重复获取
print(all1)

# 6.关闭游标对象
cursor.close()

# 7.关闭连接对象
conn.close()
